In the field of software licensing technology, the pursuit to limit the unauthorized use of software often exists in tension with the desire to deploy software in user-friendly ways. Generally, the more secure a licensing mechanism, the less accommodating it may be to the various ways with which a user may desire to interact with an application. In contrast, licensing mechanisms that are flexible in view of changing user behavior patterns may provide less than desired protection against unauthorized use.
For example, users have become increasingly accustomed to accessing software applications of all types from various locations and platforms, while enjoying the same rich features and experience as if they were working locally. From one moment to the next users may work with an application on their desktop computer, and then away from it on a mobile device or on the computer of another person. Users also enjoy the ability to use applications almost immediately upon starting or installing them.
While some software providers have simply given up trying to balance enforcement and convenience, opting for one or the other, many approaches have been taken to address this dynamic. Some involve sign-in procedures that authorize applications based on user identity, while others involve complex key management paradigms. However, the challenge to provide flexible and secure licensing of software applications will persist as long as application environments and use patterns continue to evolve.
Overview
Provided herein are systems, methods, and software that provide for flexible licensing enforcement by dynamically selecting a preferred authorization process when an application is initiated. The preferred authorization process can be selected based on conditions surrounding the initiation of the application, such as the environment within which the application is initiated or the progress of an installation process. By dynamically identifying and attempting to use a preferred authorization process, users will enjoy licensed access from any location or device of their choosing, and can be productive soon after starting or installing an application. Licensing mechanisms can still be deployed that protect the interests of the software provider.
For instance, when an application is initiated from within a roaming environment, a keyless authorization process may be selected to authorize the use of the application. In contrast, a key-based authorization process may be selected under other circumstances. This allows users to enjoy use of an application whether working with a locally installed and authorized copy, or when working away from their computer.
In another example, an application may be temporarily authorized using a keyless authorization process when a key-based authorization process is not available. This allows a user to be immediately productive upon purchasing an application, rather than delaying enjoyment of the application until after the key-based authorization process has been installed.
This Overview is provided to introduce a selection of concepts in a simplified form that are further described below in the Technical Disclosure. It should be understood that this Overview is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.